Generating slide presentations using a collaborative multi-content application

ABSTRACT

A method includes displaying, in a user interface on a user device, an electronic document including content, receiving a selection of a portion of the content, and responsive to the selection, modifying the user interface to include, in a first portion of the user interface, one or more slides generated based on the selected portion of the content while continuing to display the electronic document including the content in a second portion of the user interface. Another method may include displaying, in a user interface at a user device, a first electronic document, receiving, via the user interface, a request to view slides from a second electronic document, receiving, via the use interface, a selection of a slide to insert into the first electronic document, and responsive to the user selection of the slide, modifying the user interface to include the selected slide in the first electronic document.

BACKGROUND

A presentation slide deck may include a set of presentation slides thatmay be displayed to one or more people to provide visual illustrationduring a presentation. A presentation slide may refer to a display pagethat includes text, images, video, and/or audio for presenting to theone or more people. For example, a presentation slide may include shortsentences or bullet points to describe information that is to beconveyed by the presenter. To prepare a set of presentation slides, apresenter may conduct research and collect one or more documentsrelating to a presentation topic. The presenter may summarize a largeamount of textual content from the documents into short descriptions orillustrations in the presentation slides. Further, a presenter may alsodesign and arrange the layout and format of each slide, such as fontsize, color, background color, bullet point aligning, and/or animationconfiguration.

SUMMARY

Aspects and implementations of the present disclosure are directed to acollaborative multi-content application that enables accessing sourcecontent and building slides of a slide presentation in a single userinterface. For example, the collaborative multi-content application mayprovide a user interface including an electronic document having contentto a user device. A user may select a portion of the content for slidegeneration. The user interface may be modified to display the generatedslide in a first portion of the user interface while continuing todisplay the electronic document in a second portion of the userinterface. The slide may be edited in or deleted from the first portionof the user interface while the electronic document is displayed in thesecond portion, among other things. Thus, the user can build a slidepresentation in the same user interface that displays source materialfor the slide presentation without having to switch between userinterfaces. In some instances, performance of the computing device maybe improved because just one user interface of the collaborativemulti-content application may be opened, instead of at least one userinterface for a first application for the source content and a seconduser interface for a second application for a slide presentation.

Additionally, aspects and implementations of the present disclosure aredirected to inserting displaying a first electronic document (e.g.,collaborative text document) and enabling a user to insert one or moreslides from a second electronic document (e.g., collaborative slidepresentation) into the first electronic document. The slide may beselected from a file dropdown menu in the user interface of thecollaborative multi-content application or from a sidebar presentationtool in the first portion of the user interface of the collaborativemulti-content application. Once the slide is inserted, the user can editthe slide directly in the electronic document and launch a slidepresentation in presentation mode from the user interface. Thistechnique may also improve processing speed of the computing deviceand/or reducing memory consumption by reducing the number ofapplications that need to be open to interact with source content and aslide presentation.

BRIEF DESCRIPTION OF THE DRAWINGS

Aspects and implementations of the present disclosure will be understoodmore fully from the detailed description given below and from theaccompanying drawings of various aspects and implementations of thedisclosure, which, however, should not be taken to limit the disclosureto the specific aspects or implementations, but are for explanation andunderstanding only.

FIG. 1 illustrates an example of a system architecture forimplementations of the present disclosure.

FIG. 2 depicts a flow diagram of aspects of a method for displaying oneor more slides together with an electronic document including content ina user interface, in accordance with one implementation of thedisclosure.

FIG. 3 depicts a flow diagram of aspects of a method for generating oneor more slides for display together with an electronic documentincluding content in the user interface, in accordance with oneimplementation of the disclosure.

FIG. 4A depicts a user interface of a collaborative multi-contentapplication displaying selected content in a collaborative textdocument, in accordance with one implementation of the disclosure.

FIG. 4B depicts the user interface of the collaborative multi-contentapplication displaying a sidebar presentation tool including a slidegenerated from the selected content of FIG. 2A, in accordance with oneimplementation of the disclosure.

FIG. 4C depicts the user interface of the collaborative multi-contentapplication displaying a new slide presentation and an option to open acollaborative text document in the user interface, in accordance withone implementation of the disclosure.

FIG. 4D depicts the user interface of the collaborative multi-contentapplication displaying a slide in a first portion of the user interfaceand the selected content of the collaborative text document in a secondportion of the user interface, in accordance with one implementation ofthe disclosure.

FIG. 4E depicts the user interface of the collaborative multi-contentapplication displaying slides generated from the selected content ofFIG. 4D, in accordance with one implementation of the disclosure.

FIG. 5 depicts a user interface of the collaborative multi-contentapplication displaying the sidebar presentation tool including an optionto delete a selected slide and the collaborative text document includinghighlighted content associated with the selected slide, in accordancewith one implementation of the disclosure.

FIG. 6 depicts a user interface of the collaborative multi-contentapplication displaying the sidebar presentation tool including suggestedslides generated based on content in the collaborative text document, inaccordance with one implementation of the disclosure.

FIG. 7 depicts a user interface of the collaborative multi-contentapplication operating in a selecting mode to generate slides based onselected content, in accordance with one implementation of thedisclosure.

FIG. 8A depicts a user interface of the collaborative multi-contentapplication displaying the sidebar presentation tool including an optionto distill content for each slide, in accordance with one implementationof the disclosure.

FIG. 8B depicts a user interface of the collaborative multi-contentapplication displaying the sidebar presentation tool including adeactivated option to distill content for one of the slides, inaccordance with one implementation of the disclosure.

FIG. 9 depicts a display mode of the collaborative multi-contentapplication responsive to a user selecting to display the slidepresentation in the sidebar presentation tool, in accordance with oneimplementation of the disclosure.

FIG. 10 depicts a flow diagram of aspects of a method for displaying acollaborative text document including an inserted slide in a userinterface, in accordance with one implementation of the disclosure.

FIG. 11 depicts a flow diagram of aspects of a method for inserting aslide into a collaborative text document, in accordance with oneimplementation of the disclosure.

FIG. 12A depicts the user interface of the collaborative multi-contentapplication displaying a dropdown menu including options to insertslides into a collaborative text document, in accordance with oneimplementation of the disclosure.

FIG. 12B depicts the user interface of the collaborative multi-contentapplication displaying a collaborative text document including aninserted slide, in accordance with one implementation of the disclosure.

FIG. 13A depicts the user interface of the collaborative multi-contentapplication displaying the sidebar presentation tool from which a usermay insert a slide into a collaborative text document, in accordancewith one implementation of the disclosure.

FIG. 13B depicts the user interface of the collaborative multi-contentapplication displaying the collaborative text document including a slideinserted from the sidebar presentation tool, in accordance with oneimplementation of the disclosure.

FIG. 14 depicts a block diagram of an example computing system operatingin accordance with one or more aspects of the present disclosure.

DETAILED DESCRIPTION

Cloud-based content management platforms may provide file storage andsynchronization services, among other things. For example, a cloud-basedcontent management platform may enable a user to store files on one ormore servers in a cloud-based environment, synchronize the files acrossvarious devices of the user, and share the files with one or more otherusers. In some instances, the cloud-based content management platformmay provide a centralized location to manage the files for the user. Forexample, the files may include electronic documents created usingcollaborative document applications (e.g., collaborative text processingapplication, collaborative spreadsheet application, collaborative slidepresentation application).

An electronic document refers to media content used in electronic form.Media content may include text, tables, videos, audio, images, graphs,slides, charts, software programming code, designs, lists, plans,blueprints, maps, etc. The cloud-based content management platform mayenable an author of an electronic document to invite other users to joinas collaborators with respect to the electronic document stored in thecloud-based platform. An electronic document to which users have beengranted permission to access and/or edit concurrently may be referred toas a collaborative document herein. Although the techniques describedherein generally relate to using collaborative documents, it should benoted that the techniques may be applied to any suitable electronicdocuments.

The collaborative document may be provided to user devices of thecollaborators via the cloud-based content management platform by one ormore servers in the cloud-based environment. Each collaborator may beassociated with a user type (e.g., editor, reviewer, viewer, etc.).Different views and capabilities may be provided to the collaboratorsbased on their user type to enable editing (e.g., actuallyadding/changing text and/or suggesting changes), commenting on,reviewing, or simply viewing the collaborative document. Once grantedpermission to access the collaborative document, the collaborators mayaccess the collaborative document to perform operations allowed fortheir user type. For example, numerous users with user types ofreviewers may concurrently view and concurrently make comments on acollaborative text document. Additionally, users with user types ofeditors may suggest changes to a collaborative text document that causecomments to be created including the suggestions.

A user may use the cloud-based content management platform to create acollaborative slide presentation. Conventionally, there may be numerousactions for a user to perform when parsing source content of acollaborative text document and creating a collaborative slidepresentation. For example, the user may have to find and open each ofthe related collaborative text documents or any suitable data file usinga first application (e.g., collaborative word processing application)for a particular topic. The user may have to parse large portions of thesource content and select salient points from the source content toinclude in the slide presentation in a second application (e.g.,collaborative slide presentation application). The user may have to copynumerous sections of content from the source content to the variousslides of the collaborative slide presentation.

In some cases, maintaining the various source data files open in variousinstances of the first application and the collaborative slidepresentation in the second application may cause one or more issues. Forexample, the processing speed of a computing device may be slowed downby maintaining the various source data files open in the disparateapplications (e.g., the word processing application and the slidepresentation application). Further, the user may have to switch back andforth from the first application to copy the desired content and then tothe second application to paste the desired content into a slide.Switching between user interfaces may also cause performance issues forthe computing device. Also, managing all the different source data filesin the instances of the first application and the slide presentation inthe second application may create cognitive load for the user who has tomentally keep track of the data files and the slide presentation.

Accordingly, some embodiments of the present disclosure may relate toproviding a collaborative multi-content application that provides theability to access source content and build a slide presentation in asingle user interface. “Multi-content” may refer to the collaborativemulti-content application's ability to provide and manage content havingdifferent types, such as text documents and slide presentations, forexample. The embodiments may provide a technical effect caused by and/orresulting from a technical solution to a technical problem. For example,one technical problem may relate to inefficient and/or over consumptionof resources (e.g., processing, memory) by managing a collaborative textdocument and a collaborative slide presentation in different userinterfaces of different applications. One of the technical solutions tothe technical problem may include managing the collaborative textdocument and the collaborative slide presentation in a single userinterface. In some embodiments, the user can build a slide presentationusing the user interface of the collaborative multi-content applicationwithout having to switch between different user interfaces. A technicaleffect that may result from and/or is caused by the technical solutionto the technical problem may include improving performance of thecomputing device because just the user interface of the collaborativemulti-content application may be opened, instead of at least the userinterface of the first application for the source content and the userinterface of the second application for the slide presentation, asdescribed above. The collaborative multi-content application may belaunched from the cloud-based content management platform.

The collaborative multi-content application may provide a user interfacehaving a first portion to enable creating slides, viewing slides,editing slides, exporting slides, summarizing slides, deleting slides,presenting slides, etc. and having a second portion for a collaborativetext document or any suitable data file that enables viewing, editing,etc. of source content. The first portion may include a sidebarpresentation tool of the user interface and may be displayed togetherwith the collaborative text document including the source content in thesecond portion of the user interface. In some embodiments, a user mayselect (e.g., highlight) one or more portions of content in thecollaborative text document to use to create slides in the sidebarpresentation tool. The sidebar presentation tool may not be visibleuntil at least one slide is generated, or the sidebar presentation toolmay be visible with an empty set of slides. The techniques disclosedherein may provide a user with granular control of which content tocreate slides for and avoids the need to switch between user interfacesand/or applications (e.g., a text processing application and a slidepresentation application) to generate and manage a slide presentationincluding source content.

In some embodiments, the collaborative multi-content application mayenable the user to edit the slides displayed in the sidebar presentationtool without opening another application (e.g., slide presentationapplication). Also, the sidebar presentation tool may include optionsthat enable the user to enable or disable distilling content on a perslide basis. Distilling may refer to reducing extracted content from afirst amount of content to a second lesser amount of content. Forexample, distilling may refer to summarizing text included in contentfrom a first number of sentences to a second number of sentences that isless than the first number of sentences. Distilling and summarizing, andtheir respective variations (e.g., distillation, summarization), may beused interchangeably herein.

In some embodiments, a user may select a slide displayed in the sidebarpresentation toolbar and the content in the collaborative text documentthat was used to generate the slide may be selected (e.g., highlighted).The sidebar presentation toolbar may also provide an option to deletethe selected slide. Further, in some embodiments, the collaborativemulti-content application may cause the slide presentation displayed inthe sidebar presentation tool to be presented full-screen responsive tothe user selecting a particular graphical element in the user interface.Additionally, in some embodiments, the user may add the generated slidesdisplayed in the sidebar presentation tool to an existing slidepresentation (e.g., by importing them into the existing slidepresentation) or to save the slides as a new slide presentation. Theuser may also launch a dedicated collaborative slide presentationapplication in a separate user interface (e.g., browser window)including the generated slides from the sidebar presentation tool, ifdesired.

In another implementation, the collaborative multi-content applicationmay enable a user to select a slide from the sidebar presentation toolor from a menu option dropdown list and insert the slide directly intothe source content of the collaborative text document being displayed inthe user interface. This implementation may also provide a technicaleffect caused by and/or resulting from a technical solution to atechnical problem. For example, one technical problem may relate toinefficient and/or over consumption of resources (e.g., processing,memory) by managing a collaborative text document and a collaborativeslide presentation in different user interfaces of differentapplications. One of the technical solutions to the technical problemmay include enabling inserting a slide directly into a collaborativetext document within the same user interface by a slide associated witha new insert data type. Further the user may edit the slide in-line inthe collaborative text document and the user can launch a slidepresentation of the slides included in the collaborative text documentfrom the collaborative multi-content application without having to openanother application (e.g., slide presentation application) in a separateuser interface to launch the slide presentation. Accordingly, atechnical effect of this implementation may also improve processingspeed of the computing device by reducing the number of applicationsthat need to be open to interact with source content and a slidepresentation.

FIG. 1 illustrates an example of a system architecture 100 forimplementations of the present disclosure. The system architecture 100includes a cloud-based environment 110 connected to user devices120A-120Z via a network 130. A cloud-based environment 110 refers to acollection of physical machines that host one or more applications(e.g., a collaborative multi-content application) providing one or moreservices (e.g., word processing, slide generation for inclusion in aslide presentation, managing source content and a slide presentation ina single user interface, inserting slide(s) into a collaborative textdocument, etc.) to multiple user devices 120 via a network 130. Thenetwork 130 may be public networks (e.g., the Internet), privatenetworks (e.g., a local area network (LAN) or wide area network (WAN)),or a combination thereof. Network 130 may include a wirelessinfrastructure, which may be provided by one or more wirelesscommunications systems, such as a wireless fidelity (WiFi) hotspotconnected with the network 130 and/or a wireless carrier system that canbe implemented using various data processing equipment, communicationtowers, etc. Additionally or alternatively, network 130 may include awired infrastructure (e.g., Ethernet).

The cloud-based environment 110 may include one or more servers112A-112Z, training engine 117, and a data store 114. The trainingengine 117 and/or the data store 114 may be separate from the servers112A-112Z and communicatively coupled to the servers 112A-112Z or thetraining engine 117 and/or the data store 114 may be part of one or moreof the servers 112A-112Z. In some embodiments, the data store 114 may beincluded as part of the user devices 120A-120Z. The data store 114 maystore various collaborative documents, such as a collaborative slidepresentation 113 including one or more slides 111, a collaborative textdocument 115, or any suitable electronic document (e.g., an electronicdocument including text, tables, videos, images, graphs, slides, charts,software programming code, designs, lists, plans, blueprints, maps,etc.) that can be shared with users and/or concurrently editable byusers. The term “concurrently editable” may refer to users concurrentlymodifying (e.g., adding, deleting, changing, etc.) content (e.g., text,cells, images, data, slides, etc.), concurrently suggesting changes tothe content, concurrently making comments on the content, and the like.In some embodiments, the collaborative text document 115 may includesource content (e.g., text, images, tables, etc.) that is used togenerate the one or more slides 111 of the slide presentation 113. Theslides 111 may be dynamically generated slides based on selected contentfrom the collaborative text documents 115, template slides having aparticular layout, slides generated by a user, or the like.

The collaborative documents may be created by an author and the authormay share the collaborative documents with other users (e.g.,collaborators). Sharing the collaborative documents may refer togranting permission to the other users to access the collaborativedocuments. Sharing the collaborative documents may include informing theother users of the collaborative documents via a message (e.g., email)including a link to the collaborative documents. The level ofpermissions that each user is granted may be based on the user type ofeach particular user. For example, a user with an editor user type maybe able to open the collaborative documents and make changes directly tothe collaborative documents. As such, numerous collaborators mayconcurrently make changes to the content included in the collaborativedocument.

The training engine 117 may include a processing device or devices, suchas a computer, microprocessor, logic device or other device or processorthat is configured with hardware, firmware, and software to carry outsome of the embodiments described herein. The training engine 117 mayinclude or have access to a set of training data files including content(e.g., text, data tables, images, video, audio, etc.) and correspondingsummaries for each of the training data files that are used as trainingdata by the training engine 117 to train a machine learning model 116 toperform extraction-based summarization. A machine learning model 116 mayrefer to a model artifact that is created by the training engine 117using training inputs and corresponding target outputs. The traininginputs may include the set of training data files, and the correspondingtarget outputs may include summaries for respective training inputs. Insome embodiments, the training data files and the corresponding targetoutputs may include a particular format (e.g., bullet point list). Themachine learning model 116 may use the training inputs and targetoutputs to learn features of words, phrases, or sentences in text thatmake them good candidates to be included in a summary (distilledcontent). The features may include the position in the text (e.g., afirst sentence may be a topic sentence and provide a good overview of aparagraph, the first few sentences may be relevant, a last sentence maybe a conclusion and may be relevant), frequent words or phrases, numberof words in sentences, etc. Once trained, the machine learning model 116may be applied to new content to obtain a summary (distilled content)for the new data file 116. In some implementations, distilled contentmay be included in a new slide 111 generated by the collaborativemulti-content application 118A-118Z.

The servers 112A-112Z may be physical machines (e.g., server machines,desktop computers, etc.) that each include one or more processingdevices communicatively coupled to memory devices and input/output (I/O)devices. The servers 112A-112Z may host a collaborative multi-contentapplication (118A-118Z). The collaborative multi-content application118A-118Z may be implemented as computer instructions that areexecutable by one or more processing devices on each of the servers112A-112Z. In alternative implementations, the collaborativemulti-content application 118A-118Z may be installed on the user devices120A-120Z (e.g., as a standalone application) and operate as peers in apeer-to-peer environment. The server 112A-112Z selected to host thecollaborative multi-content application 118A-118Z may be based oncertain load-balancing techniques, service level agreements, performanceindicators, or the like.

The collaborative multi-content application 118A-118Z may enable a userto view, manage, generate, interact with a collaborative text document115 and slides 111 of a collaborative slide presentation 113 with whichthey created or are associated with in a single user interface124A-124Z. Additionally, in some embodiments, the collaborativemulti-content application 118A-118Z may provide the user interface124A-124Z that displays the generated slides 111 in a first portiontogether with the collaborative text document 115 in a second portion tothe user devices 120A-120Z.

For example, the collaborative multi-content applications 118A-118Z mayenable a user to select content from the collaborative text document 115displayed in a second portion of the user interfaces 124A-124Z togenerate a slide 111 in a presentation 113 displayed in a first portionof the user interface 124A-124Z. Further, the collaborativemulti-content applications 118A-118Z may enable a user to insert a slide111 as content in a collaborative text document 115 and to interact withthe slide 111 in-line in the collaborative text document 115.

The collaborative multi-content applications 118A-118Z may also enableusers using different user devices 120A-120Z to simultaneously accessthe collaborative document (113 and/or 115) to comment on, edit (e.g.,modify or suggest changes), and/or view the collaborative document in arespective user interface of the respective collaborative multi-contentapplication 118A-118Z that displays the collaborative document in theuser interfaces 124A-124Z. In an implementation, the user interfaces124A-124Z of the collaborative multi-content applications 118A-118Z maybe web pages rendered by a web browser and displayed on the user device120A-120Z in a web browser window. In another implementation, the userinterfaces 124A-124Z may be included in a native application executingon the user device 120A-120Z. The native application may be separatefrom a web browser.

The user devices 120A-120Z may include one or more processing devicescommunicatively coupled to memory devices and I/O devices. The userdevices 120A-120Z may be desktop computers, laptop computers, tabletcomputers, mobile phones (e.g., smartphones), or any suitable computingdevice. A user may open an existing collaborative text document 115using the collaborative multi-content application 118A-118Z (e.g., ifthe user is the author or the collaborative text document 115 is sharedwith the user) or create a new collaborative text document 115. As such,the user device 120A associated with the user may request thecollaborative text document 115 from the cloud-based environment 110.

One or more of the servers 112A-112Z may provide the requestedcollaborative text document 115 to the user device 120A. In someinstances, the user interface 124A of the collaborative multi-contentapplication 118A-118Z may display the collaborative text document 115. Auser may select (e.g., highlight) various content in the collaborativetext document 115 to use to create one or more slides 111. The userdevice 120A may send a request to the collaborative multi-contentapplication 118A-118Z to generate one or more slides 111 based on theselected content. The collaborative multi-content application 118A-118Zmay generate the one or more slides 111 based on the selected contentand cause the user interface 124A-124Z to update to display a sidebarpresentation tool (if not already being displayed) including thegenerated slides 111 in a first portion of the user interface 124Atogether with the collaborative text document 115 (e.g., source content)displayed in a second portion of the user interface 124A. In someembodiments, the slides 111 displayed in the sidebar presentation toolmay be editable by the user. For example, the user may change the fontin the slides 111, change the font type, change the font size, changethe font color, insert objects (e.g., images), change the backgroundcolor, and so forth, directly in the slide 111 displayed in the sidebarpresentation tool without opening a separate application (e.g., adedicated slide presentation application).

In some embodiments, the collaborative multi-content application118A-118Z may distill (e.g., summarize) the content selected for slidegeneration. As discussed below, the user interface 124A-124Z displayingthe sidebar presentation tool may include options to enablesummarization on a per slide basis (e.g., summarize may be enabled forone slide 11 and disabled for a second slide 111). In some embodiments,summarization may be enabled or disabled by default, which may be aconfigurable setting. As noted above, if summarization is enabled, thecollaborative multi-content application 118A-118Z may apply the selectedcontent as input to the machine learning model 116 that is trained toproduce the distilled content as a target output. In one embodiment, thecollaborative multi-content application 118A-118Z may use one or morerules 119 that define heuristics for distilling the content. The rules119 may be predefined by a developer. The rules 119 may be applied tothe content selected for slide generation from the collaborative textdocument 115 to distill the content.

For example, if the content is text, one rule 119 may define that thetext that is to be included in a slide 111 does not overflow the slide111. In such cases, the text may be distilled into different subsets andeach subset may be included in a different slide 111 such that thesubset of text properly fits within the different slides 111. The rule119 may define that complete sentences or an individual bullet point isnot broken up when separating the text between slides 111. Another rule119 may define using a sentence for a bullet point based on thesentence's position in a paragraph (e.g., a first sentence in aparagraph of text as a bullet point for a slide 111 because the firstsentence is likely to be a topic sentence, or using a last sentence inthe paragraph as a bullet point because the last sentence is likely toinclude a conclusion). Another rule 119 may define that frequentlyappearing words or phrases in a body of text are to be distilled and asingle sentence is to be included as a bullet point with the frequentlyappearing words or phrases while some of the other sentences with lessfrequently appearing words or phrases are to be ignored. Another rule119 may define that a maximum number of sentences be distilled forrepresentation in a slide 111.

In some embodiments, a user may select a slide 111 displayed in thesidebar presentation toolbar and the content in the collaborative textdocument 115 that was used to generate the slide 111 may be selected(e.g., highlighted). The sidebar presentation toolbar may also providean option to delete the selected slide 111. Further, in someembodiments, the collaborative multi-content application 118A may causethe slides 111 of the slide presentation 113 displayed in the sidebarpresentation tool to be presented full-screen responsive to the userselecting a particular graphical element in the user interface 124A.Additionally, in some embodiments, the user may add the generated slides111 displayed in the sidebar presentation tool to an existing slidepresentation (e.g., by importing them into the existing slidepresentation) or to save the slides as a new slide presentation 113. Theuser may also launch a dedicated collaborative slide presentationapplication in a separate user interface (e.g., browser window)including the generated slides 111 from the sidebar presentation tool,if desired.

In another embodiment, a user viewing the collaborative text document115 may select a slide 111 (e.g., via a dropdown menu option or from thesidebar presentation tool) to insert as content into the collaborativetext document 115 via the user interface 124A. For example, the dropdownmenu may include slides available to be inserted provided by thecollaborative multi-content application 118A-118Z and/or the sidebarpresentation tool may include the generated slides 111 based on thecontent in the collaborative text document 115. Upon selection of aslide 111, the user device 120A may send the request for slide insertionto the collaborative multi-content application 118A. The collaborativemulti-content application 118A may receive a request to insert theselected slide 111 into the collaborative text document 115. The slide111 may have a particular insert data type or file type that enablesinserting the slide 111 into the collaborative text document 115. Theinserted slide 111 may be edited in-line in the collaborative textdocument 115 via the user interface 124A without the user opening aseparate application (e.g., a dedicated slide presentation application)in another user interface. Further, in some embodiments, the user maylaunch a slideshow presentation of the slides 111 inserted into thecollaborative text document 115 directly from the user interface124A-124Z of the collaborative multi-content application 118A-118Z.

FIG. 2 depicts a flow diagram of aspects of a method 200 for displayingone or more slides 111 together with an electronic document (e.g.,collaborative text document 115) including content in a user interface124A, in accordance with one implementation of the disclosure. Althoughthe user interface 124A is used for discussion of method 200, it shouldbe understood that any other user interface 124B-124Z may be used,instead of or in addition to the user interface 124A. Method 200 andeach of its individual functions, routines, subroutines, or operationsmay be performed by one or more processing devices of the computerdevice executing the method. In certain implementations, method 200 maybe performed by a single processing thread. Alternatively, method 200may be performed by two or more processing threads, each threadexecuting one or more individual functions, routines, subroutines, oroperations of the method. In an illustrative example, the processingthreads implementing method 200 may be synchronized (e.g., usingsemaphores, critical sections, and/or other thread synchronizationmechanisms). Alternatively, the processes implementing method 200 may beexecuted asynchronously with respect to each other.

For simplicity of explanation, the methods of this disclosure aredepicted and described as a series of acts. However, acts in accordancewith this disclosure can occur in various orders and/or concurrently,and with other acts not presented and described herein. Furthermore, notall illustrated acts may be required to implement the methods inaccordance with the disclosed subject matter. In addition, those skilledin the art will understand and appreciate that the methods couldalternatively be represented as a series of interrelated states via astate diagram or events. Additionally, it should be appreciated that themethods disclosed in this specification are capable of being stored onan article of manufacture to facilitate transporting and transferringsuch methods to computing devices. The term “article of manufacture,” asused herein, is intended to encompass a computer program accessible fromany computer-readable device or storage media. In one implementation,method 200 may be performed by one or more processing devices of theuser device 120A-120Z displaying the user interface 124A-124Z of thecollaborative multi-content application 118A.

At block 202, the processing device may display, in a user interface124A of the user device 120A, an electronic document including content.In some embodiments, the electronic document may be a collaborative textdocument 115 and the content may include text, images, objects, tables,etc. The user interface 124A may be provided by the collaborativemulti-content application 118A. The user may select to open theelectronic document from a user interface of a cloud-based contentmanagement platform.

At block 204, the processing device may receive a user selection of aportion of the content included in the electronic document beingdisplayed in the user interface 124A. In some embodiments, the user mayuse an input peripheral (e.g., mouse, touchscreen, stylus pen, etc.) toselect (e.g., highlight) a portion of the content for which slidegeneration is desired. In some instances, the selected portion of thecontent may not include the entire content included in the electronicdocument. Accordingly, granular creation of slides based on selectedportions of content may be enabled by the present disclosure.

In some embodiments, selecting the portion of content may cause one ormore options (e.g., graphical elements, such as buttons or a file menu)to be displayed proximate to the selected portion of content. One of theoptions, upon selection, may cause one or more slides 111 to begenerated by the collaborative multi-content application 118A based onthe selected portion of content. In another embodiment, the processingdevice may receive a user selection of an option in the user interface124A to enter a selecting mode. Any selections of content made whileoperating in the selecting mode may cause the one or more slides 111 tobe generated for the selected content.

At block 206, the processing device may, responsive to the userselection of the portion of the content, modify the user interface 124Ato include, in a first portion of the user interface 124A, one or moreslides 111 generated based on the selected portion of the content whilecontinuing to display the electronic document including the content in asecond portion of the user interface 124A. It should be understood thatno other user action may be taken to cause the one or more slides 111 tobe generated besides the user selection of the portion of the contentfor which slide generation is desired. In some embodiments, generatedslides 111 may be included in a sidebar presentation tool in the firstportion of the user interface 124A provided by the collaborativemulti-content application 118A.

The collaborative multi-content application 118A may enable editing theone or more slides 111 via the sidebar presentation tool of the userinterface 124A. The user may make edits (e.g., font type change, fontsize change, font color change, background color change, add object,delete object, update header/footer, etc.) directly in the one or moreslides 111 displayed in the user interface 124A. For example, theprocessing device may receive an edit, in the first portion of the userinterface 124A, to a slide 111 of the one or more slides 111. Theprocessing device may further, responsive to receiving the edit, modifythe user interface 124A to include, in the first portion of the userinterface, the slide 111 with the edit while continuing to display theelectronic document including the content in the second portion of theuser interface 124A.

The collaborative multi-content application 118A may also enableenabling and disabling summarization by providing a respectivesummarization option for each slide 111 via the sidebar presentationtool of the user interface 124A. The collaborative multi-contentapplication 118A may distill the content, when the summarization optionis enabled, by applying the machine learning model 116 or the rules 119to the content in the slide. For example, the processing device maydisplay, in the first portion of the user interface 124A, an option foreach of the one or more slides 111. The option may enable or disablesummarization of content included in a respective slide 111. The optionmay be configured to default to enabled or disabled as desired. In oneembodiment, the processing device may receive a user selection of theoption for a slide 111 of the one or more slides 111 to enablesummarization of content for the slide 111. Responsive to the userselection of the option, the processing device may reduce the content inthe slide 111 from a first number of sentences to a second lesser numberof sentences. In another embodiment, the processing device may receive auser selection of the option for a slide 111 of the one or more slides111 to disable summarization of content for the slide 111. Responsive tothe user selection of the option, the processing device may increase thecontent in the slide 111 from a first number of sentences to a secondgreater number of sentences.

In some embodiments, the processing device may receive a user selectionof a slide 111 of the one or more slides 111 being displayed in thefirst portion of the user interface 124A. The user selection may be madeby a user using an input peripheral, such as a mouse, keyboard,touchscreen, stylus pen, or the like. Responsive to the user selectionof the slide, the processing device may modify the user interface 124Ato highlight the portion of content in the electronic document that wasused to generate the selected slide 111.

Further, an option to delete the selected slide may be displayed uponthe slide being selected. In some embodiments, the processing device mayreceive a user selection to delete the selected slide from the one ormore slides being displayed in the first portion of the user interface124A. Responsive to the user selection of the slide to delete, theprocessing device may modify the user interface 124A to display, in thefirst portion, the one or more slides without the selected slide whilecontinuing to display the electronic document including the content inthe second portion of the user interface 124A.

In some embodiments, the processing device may also receive a userselection of an option in the user interface 124A to present, in apresentation mode, the one or more slides 111 being displayed in thefirst portion. The processing device may present the one or more slides111 full-screen in the presentation mode. The presentation mode mayinclude modifying the user interface 124A such that a slideshow isdisplayed with a first slide being presented full-screen, and the usermay select to advance to a second slide or the slideshow may advance toa second slide after a predetermined time period. In some embodiments,any slide in the slide presentation may be initially presented if theuser selects that slide and launches the presentation mode based on theselected slide.

In some embodiments, the processing device may receive a user selectionto add the one or more slides 111 to an existing slide presentation(e.g., already created and stored in the data store 114). Responsive tothe user selection to add the one or more slides to the existing slidepresentation, the processing device may send a request to thecollaborative multi-content application 118A that causes the one orslides 111 to be added to the existing slide presentation. In anotherembodiment, the processing device may receive a user selection to savethe one or more slides 111 as a new slide presentation. Responsive tothe user selection to save the one or more slides 111 as the new slidepresentation, the processing device may send a request to thecollaborative multi-content application 118A that causes the one or moreslides 111 to be saved as the new slide presentation.

FIG. 3 depicts a flow diagram of aspects of a method 300 for generatingone or more slides 111 for display together with an electronic documentincluding content in the user interface, in accordance with oneimplementation of the disclosure. Although the user interface 124A isused for discussion of method 300, it should be understood that anyother user interface 124B-124Z may be used, instead of or in addition tothe user interface 124A. Method 300 may be performed in the same or asimilar manner as described above in regards to method 200. In oneimplementation, one or more of the operations described with referenceto method 300 may be performed by collaborative multi-contentapplication 118A-118Z executed by one or more processing devices of theservers 112A-112Z.

At block 302, the processing device may provide, to a user device 120Aof a user, a user interface 124A including an electronic document havingcontent. In some embodiments, the electronic document may be acollaborative text document 115 and the content may be text, images,tables, objects, etc. The processing device may provide the userinterface 124A including the electronic document in response toreceiving a request to open the electronic document from the user device120A.

At block 304, the processing device may receive a request to generateone or more slides 111 based on a user selected portion of the contentof the electronic document being displayed in the user interface. Theuser may select the portion of the content in the electronic documentusing an input peripheral.

The processing device may generate the one or more slides 111. In someembodiments, the processing device may determine a formatting (e.g.,title, section header, header and associated body text) of the portionof the content by parsing the selected portion or by analyzing metadataof the electronic document. Based on the format of the selected portionof the content, one or more layout templates may be selected to be usedwith the portion of the content to generate the slides. For example, a“Title” layout template may be selected to include content having atitle format type, a “Title plus Body” layout template may be selectedfor a header with associated body text where the header text is set tothe Title of the slide and the body text is set to the Body of theslide. In some embodiments, the selected portion of the content may be“chunked” into different sections that are included in more than oneslide. For example, if the selection portion of content includes twoheaders each associated with respective body text, then two slides maybe generated having the layout template “Title plus Body” where eachslide includes one header and its associated body text.

At block 306, the processing device, responsive to the request, maycause the user interface 124A to be modified to include, in a firstportion of the user interface 124A, the one or more slides 111 whilecontinuing to display the electronic document having the content in asecond portion of the user interface 124A. The processing device mayprovide a sidebar presentation tool that includes the one or more slidesin the first portion of the user interface 124A.

In some embodiments, the processing device may receive, from the sidebarpresentation tool displayed in the user interface 124A on the userdevice 120A, an edit to a slide 111 of the one or more slides 111 beingdisplayed in the first portion of the user interface 124A. Responsive toreceiving the edit, the processing device may cause the user interface124A to be modified to include, in the first portion of the userinterface 124A, the slide with the edit while continuing to display theelectronic document including the content in the second portion of theuser interface 124A.

In some embodiments, the processing device may receive a request toenable summarization of content for a slide 111 of the one or moreslides 111. Responsive to the request to enable summarization ofcontent, the processing device may reduce the content in the slide 111from a first number of sentences to a second lesser number of sentences.The processing device may cause the user interface 124A to be modifiedto include the slide 111 with the reduced content in the first portionwhile continuing to display the electronic document including thecontent in the second portion of the user interface 124A.

In some embodiments, the processing device may receive a request todisable summarization of content for a slide 111 of the one or moreslides 111. Responsive to the request to disable summarization ofcontent, the processing device may increase the content in the slide 111from a first number of sentences to a second greater number ofsentences. The processing device may cause the user interface 124A to bemodified to include the slide 111 with the reduced content in the firstportion while continuing to display the electronic document includingthe content in the second portion of the user interface 124A.

In some embodiments, the processing device may receive a request to addthe one or more slides 111 to an existing slide presentation. Responsiveto the request, the processing device may add the one or more slides tothe existing slide presentation in the data store 1114. In someembodiments, the processing device may receive a second request to savethe one or more slides 111 as a new slide presentation. Responsive tothe request, the processing device may save the one or more slides 111as the new slide presentation in a data store.

FIG. 4A depicts a user interface 124A of a collaborative multi-contentapplication 1118A displaying a selection portion of content 400 in acollaborative text document 115, in accordance with one implementationof the disclosure. As depicted, initially the user interface 124A mayjust display the collaborative text document 115 (e.g., withoutdisplaying a sidebar presentation tool). Upon the user selecting theportion of content 400, one or more graphical elements (e.g., buttons,option menu, etc.) may appear in the user interface 124A. Alternatively,the user may actuate a button of an input peripheral (e.g., rightclicking a mouse button) to cause the graphical elements to appear. Thegraphical elements may be associated with the selected portion ofcontent 400 and provide various options for the selected portion ofcontent 400. For example, a graphical element 402 may include an optionfor creating a slide 111 based on the selected portion of content 400.Selecting the graphical element 402 may send a request to thecollaborative multi-content application 118A to generate a slide 111 forthe selected portion of content 400. The collaborative multi-contentapplication 118A may generate one or more slides 111 based on theselected portion of content 400 and return the generate one or moreslides. In another embodiment, as described further below, when the usercauses the collaborative multi-content application 118A to enter acertain mode (e.g., selecting mode), simply selecting (e.g.,highlighting) the content 400 in the collaborative text document 115 maycause one or more slides to be generated for the selected content 400.

FIG. 4B depicts the user interface 124A of the collaborativemulti-content application 118A displaying a sidebar presentation tool204 including a slide 111 of a collaborative slide presentation 113generated from the selected portion of content 400 of FIG. 2A, inaccordance with one implementation of the disclosure. As depicted, theuser interface 124A presents sidebar presentation tool 204 including theslide 111 in a first portion 206 of the user interface 124A whilecontinuing to display the collaborative text document 115 in a secondportion 208 of the user interface 124A. Presenting the slide 111 of thecollaborative slide presentation 113 together with the collaborativetext document 115 in a single user interface 124A may enhance computingspeed and/or reduce memory usage by the user avoiding opening numerousdifferent applications in different user interfaces.

The slide 111 includes the selected portion of content 400 (e.g.,“Business Goals: Achieve total revenue over $4 million in fiscal year2013; Register over 8,900 new customers in FY 2013; Receive over 19,000lead referrals in FY 2013”) from the collaborative text document 115 andexcludes other content in the collaborative text document 115.Accordingly, a user may granularly pick and choose which content tobuild slides 111 for and view the collaborative slide presentation 113including the slides 111 as it is built in the sidebar presentation tool204, while also viewing one or more collaborative text documents 115used for source material. The slide 111 includes a layout template of“Title plus Body” because the portion of content 400 has a format typeof header (“Business Goals”) and body text associated with the header.In some embodiments, the sidebar presentation tool 204 may remainvisible when the user opens a different collaborative text document 115in the same user interface 124A to enable the user to build thecollaborative slide presentation 113 including slides 111 with contentfrom numerous different collaborative text documents 115 without havingto switch between different user interfaces and/or application instances(e.g., word processing applications).

In some embodiments, the user may edit the slides 111 included in thesidebar presentation toolbar 204 in the first portion 206 of the userinterface 124A that is displayed together with the collaborative textdocument 115 in the second portion 208. For example, the user may changeaspects to the font (e.g., color, type, size, etc.), background (e.g.,color), and so forth, directly in the slide displayed in the firstportion 206 while the collaborative text document 115 is displayed inthe second portion 208 of the user interface 124A without having to openanother application in a different user interface.

Further, in some embodiments, the user may use the sidebar presentationtool 204 to add slides to an existing collaborative slide presentation113 using, for example, option 210 provided by the user interface 124A.In another embodiment, the user may save the one or more slides 111 ofthe collaborative slide presentation 113 in the sidebar presentationtool 204 as a new collaborative slide presentation 113 in the data store114 using, for example, option 212 in the user interface 124A. Uponcreating a new collaborative slide presentation 113, a separatecollaborative slide presentation application may be launched thatdisplays the created collaborative slide presentation 113.

FIG. 4C depicts the user interface 124A of the collaborativemulti-content application 118A displaying a new slide presentation 113and an option 403 to open a collaborative text document 115 in the userinterface 124A, in accordance with one implementation of the disclosure.As depicted in this example, the user may initially select to view thenew slide presentation 113 in the user interface 124A. Also, the usermay select the option 403 (e.g., button, link, etc.) to add acollaborative text document 115 to the user interface. Upon selectingthe option 403, a graphical element, such as a file menu 404, may bedisplayed that includes various available collaborative text document115 that are available to open by the collaborative multi-contentapplication 118A. The user may select one of the collaborative textdocuments 115, as shown by hand icon 406. Although, one collaborativetext document 115 is shown as being open for explanatory purposes, itshould be understood that any suitable number (e.g., 1, 2, 3, 4, 5) maybe open and toggled between being visible in the user interface 124A toselect content for which to generate slides. Thus, a user may generateslides using content from multiple collaborative text documents 124A ina single user interface 124A.

In response to selecting the collaborative text document 115, the userinterface 124A may be updated to display the slide presentation 113 inthe first portion 206 of the user interface 124A together with thecollaborative text document 115 in the second portion 208 of the userinterface, as depicted in FIG. 4D. The user may select a portion ofcontent 100 in the collaborative text document 115 displayed in the userinterface 124A. Upon the user selecting the portion of content 400, oneor more graphical elements (e.g., buttons, option menu, etc.) may appearin the user interface 124A. Alternatively, the user may actuate a buttonof an input peripheral (e.g., right clicking a mouse button) to causethe graphical elements to appear. The graphical elements may beassociated with the selected portion of content 400 and provide variousoptions for the selected portion of content 400. For example, agraphical element 402 may include an option for creating a slide 111based on the selected portion of content 400. Selecting the graphicalelement 402 may send a request to the collaborative multi-contentapplication 118A to generate a slide 111 for the selected portion ofcontent 400. The collaborative multi-content application 118A maygenerate one or more slides 111 based on the selected portion of content400 and return the generate one or more slides. In another embodiment,as described further below, when the user causes the collaborativemulti-content application 118A to enter a certain mode (e.g., selectingmode), simply selecting (e.g., highlighting) the content 400 in thecollaborative text document 115 may cause one or more slides to begenerated for the selected content 400.

FIG. 4E depicts the user interface 124A of the collaborativemulti-content application 118A displaying slides 111 generated from theselected content 400 of FIG. 4D, in accordance with one implementationof the disclosure. As depicted, the user interface 124A presents theslides 111 in the first portion 206 of the user interface 124A whilecontinuing to display the collaborative text document 115 in the secondportion 208 of the user interface 124A. Presenting the slides 111 of thecollaborative slide presentation 113 together with the collaborativetext document 115 in a single user interface 124A may enhance computingspeed and/or reduce memory usage by the user avoiding opening numerousdifferent applications in different user interfaces.

The slides 111 may include the selected portion of content 400 from thecollaborative text document 115 and excludes other content in thecollaborative text document 115. Accordingly, a user may granularly pickand choose which content to build slides 111 for and view thecollaborative slide presentation 113 including the slides 111 as it isbuilt in the user interface 124A, while also viewing one or morecollaborative text documents 115 used for source material. In someembodiments, the user may edit the slides 111 in the first portion 206of the user interface 124A that is displayed together with thecollaborative text document 115 in the second portion 208. For example,the user may change aspects to the font (e.g., color, type, size, etc.),background (e.g., color), and so forth, directly in the slide displayedin the first portion 206 while the collaborative text document 115 isdisplayed in the second portion 208 of the user interface 124A withouthaving to open another application in a different user interface.

FIG. 5 depicts a user interface 124A of the collaborative multi-contentapplication 118A displaying the sidebar presentation tool 204 includingan option to delete a selected slide 500 and the collaborative textdocument 115 including highlighted content 400 associated with theselected slide, in accordance with one implementation of the disclosure.As depicted, the collaborative slide presentation 113 including one ormore generated slides 111 are displayed in the sidebar presentation tool204 in the first portion of the user interface 124A together with thecollaborative text document 115 in the second portion of the userinterface 124A. The user may select the selected slide 500 and theselected slide 500 may be highlighted, as depicted in the sidebarpresentation tool 204.

Upon selecting the slide 500, the portion of content 400 that was usedto generate the selected slide 500 may be highlighted in thecollaborative text document 115. This may aid a user in identifying theinformation in source materials that was used to generate the variousslides 111. Further, upon selecting the slide 500, an option 502 (e.g.,graphical element, such as a button) to delete the selected slide 500may be provided for the slide 500 in the sidebar presentation tool 204.If the user selects the option 500, the select slide 500 may be deletedfrom the collaborative slide presentation 113. As such, the userinterface 124A may be modified to display the remaining slides 111 ofthe sidebar presentation tool 204 in the first portion 206 of the userinterface 124A while continuing to display the collaborative textdocument 115 in the second portion 208 of the user interface 124A.

FIG. 6 depicts a user interface of the collaborative multi-contentapplication 118A displaying the sidebar presentation tool 204 includingsuggested slides 600 generated based on content in the collaborativetext document 115, in accordance with one implementation of thedisclosure. In some embodiments, if the user opens the collaborativetext document 115, the collaborative multi-content application 118A maygenerate a number of suggested slides 600 based on the content in thecollaborative text document 115 that is open. The user may not provideany input besides opening the collaborative text document 115.

As depicted, the suggested slides 600 may be displayed in the sidebarpresentation tool 204 in the first portion 206 of the user interface124A together with the collaborative text document 115 in the secondportion 208 of the user interface 124A. The sidebar presentation tool204 may provide an option to accept and an option to rejection each ofthe suggested slides 600. If the user selects to accept the suggestedslide 600, the suggested slide 600 may be added to the collaborativeslide presentation 113. If the user selects to reject the suggestedslide 600, the suggested slide 600 may be removed from the collaborativeslide presentation 113.

FIG. 7 depicts a user interface 124A of the collaborative multi-contentapplication 118A operating in a selecting mode to generate slides 111based on selected content, in accordance with one implementation of thedisclosure. Any selections of content in the collaborative text document115 that are made in collaborative text document 115 displayed in thefirst portion 208 of the user interface 124A while the collaborativemulti-content application 118A is operating in the selecting mode maycause the slides 111 to be generated based on the selected content anddynamically displayed in the second portion 206 of the user interface124A. As depicted, numerous slides 111 are generated based on theselected content. The slides 111 are generated based on the format typeof the selected text in the collaborative text document 115. Forexample, a first slide 700 having a “Title” layout template is generatedfor a selected portion of content that is the title (“Marketing Plan”)of the collaborative text document 115. A second slide 702 having a“Section Header” layout template is generated for a selected portion ofcontent that is a section header (“Goals”) without associated body text.A third slide 703 is generated having a “Title plus Body” layouttemplate is generated for a selected portion of content that includes aheader (“Personal Goals”) and associated text.

FIG. 8A depicts a user interface 124A of the collaborative multi-contentapplication 118A displaying the sidebar presentation tool 204 includinga summarization option 800 to distill content for each slide 111 in thecollaborative slide presentation 113, in accordance with oneimplementation of the disclosure. Some of the slides 111 may have thesummarization option 800 enabled, while other slides 111 have thesummarization option 800 disabled. In some instances, the option 800 mayinclude a slider, a radio button, a checkbox, etc. The summarizationoption 800 may be defaulted to enabled, as displayed. In someembodiments, the summarization option 800 may only be displayed forslides 111 having a particular layout template, such as “Title plusBody”. For example, a slide having a layout template of “Title” may notdisplay the summarization option 800 because there may not be anycontent to distill in the slide 111.

When the summarization option 800 is enabled, the respective slide 111may include a lesser amount of content than the portion of content usedto generate that particular slide from the collaborative text document115. For example, summarization option 800 for slide 802 is enabled.Accordingly, the collaborative multi-content application 118A may applythe machine learning model 116 or the rules 119 to the content 804(Achieve total revenue over $4 million in fiscal year 2013; Registerover 8,900 new customers in FY 2013; Receive over 19,000 lead referralsin FY 2013) used to generate the slide 802. The content 804 may bereduced from a first number of sentences (e.g., 3) to a second lessernumber of sentences (e.g., 1) to generate distilled content 806 (Achievetotal revenue over $4 million in fiscal year 2013) that is included inthe slide 802 as a result of distilling.

FIG. 8B depicts a user interface 124A of the collaborative multi-contentapplication 118A displaying the sidebar presentation tool 204 includinga deactivated summarization option 800 to distill content for the slide802, in accordance with one implementation of the disclosure. The usermay select to disable the summarization option 800 and the userinterface 124A may be modified to increase the amount of content in theassociated slide 806 from a first amount (e.g., 1 sentence) to a secondgreater amount (e.g., 3 sentences), resulting in un-distilled content810, in the slide 802. The user interface 124A may be modified todisplay the un-distilled content 810 in the slide 802 in the firstportion 206 of the user interface 124A while continuing to display thecollaborative text document 115 in the second portion 208 of the userinterface 124A. The un-distilled content 810 (Achieve total revenue over$4 million in fiscal year 2013; Register over 8,900 new customers in FY2013; Receive over 19,000 lead referrals in FY 2013) may match thecontent 804 (Achieve total revenue over $4 million in fiscal year 2013;Register over 8,900 new customers in FY 2013; Receive over 19,000 leadreferrals in FY 2013) in the collaborative text document 115 that wasused to generate the slide 802.

FIG. 9 depicts a presentation mode 900 of the collaborativemulti-content application 118A responsive to a user selecting to displaythe slide presentation 113 in the sidebar presentation tool 204, inaccordance with one implementation of the disclosure. The user mayselect to enter the presentation mode via an option included in thesidebar presentation tool 204 in the first portion 206 of the userinterface 124A. Upon entering presentation mode 900, the user interface124A may be updated to display a first slide 111 of the one or moreslides 111 full-screen in a slideshow. The user may advance to a secondslide using an option provided by the presentation mode 900 or the slidepresentation 113 may advance to a second slide after a predefined amountof time. The user may use various options to scroll back and forthbetween slides 111 in the presentation mode 900. The presentation mode900 may enable a user to preview how the slide presentation 113 may lookon a larger scale.

FIG. 10 depicts a flow diagram of aspects of a method 1000 fordisplaying a collaborative text document 115 including an inserted slide111 in a user interface 124A, in accordance with one implementation ofthe disclosure. Although the user interface 124A is used for discussionof method 1000, it should be understood that any other user interface124B-124Z may be used, instead of or in addition to the user interface124A. Method 1000 may be performed in the same or a similar manner asdescribed above in regards to method 200. In one implementation, method1000 may be performed by one or more processing devices of the userdevice 120A-120Z displaying the user interface 124A-124Z of thecollaborative multi-content application 118A.

At block 1002, the processing device may display, in a user interface124A at a user device 120A, a first electronic document. In someembodiments, the first electronic document may be a collaborative textdocument 115. The user interface 124A displaying the first electronicdocument may be received from the collaborative multi-contentapplication 118A in response to a request to view the first electronicdocument.

At block 1004, the processing device may receive, via the user interface124A, a user request to view one or more slides 111 from a secondelectronic document. In some embodiments, the second electronic documentmay include a slide presentation 113 (e.g., collaborative ornon-collaborative). In some embodiments, the request to view the slides111 may include the user accessing a file dropdown menu in the userinterface 124A. The file dropdown menu may provide various options ofslides 111 having different layout templates, styles, themes, content,etc. to select from. In some embodiments, the request to view the slides111 may include the user selecting content of the first electronicdocument and requesting that the slides 111 be generated and displayedin the sidebar presentation tool 204 in the user interface 124A.

At block 1006, the processing device may receive, via the user interface124A, a user selection of a slide 111 of the one or more slides 111 toinsert into the first electronic document. The user selection mayinclude selecting the slide from the file dropdown menu or from thesidebar presentation tool 204, as discussed further below. For example,the user selection of the slide may include the user using an inputperipheral to selecting the slide being displayed in the first portion206 of the user interface 124A, dragging the slide, and dropping theslide at a location in the first electronic document being displayed inthe second portion 208 of the user interface 124A. The user selectionmay cause the collaborative multi-content application 118A to insert theselected slide into the first electronic document. The slide may have aparticular data type and/or file type that enables inserting it into thefirst electronic document.

At block 1008, the processing device may, responsive to the userselection of the slide 111, modify the user interface 124A to includethe selected slide in the first electronic document. The selected slidemay be inserted at any suitable location (e.g., at a location where acursor was located in the first electronic document when the userselection of the slide was made). In some embodiments, the insertedslide may be edited in-line in the first electronic document.Accordingly, the processing device may receive an edit to the slide 111in-line in the first electronic document in the user interface 124A. Theprocessing device may also modify the user interface 124A to include theslide 111 with the edit in the first electronic document.

In some embodiments, the slides 111 inserted in the first electronicdocument may be associated with one another as part of a collaborativeslide presentation 113. The user may select an option from the userinterface 124A to launch a presentation mode displaying a slideshow ofthe slides 111 of the collaborative slide presentation 113 included inthe first electronic document. This feature may enable previewing whatthe final slide presentation 113 may look like as the user adds moreslides to the first electronic document. Another option in the userinterface 124A may enable the user to add the slides 111 included in thefirst electronic document to an existing slideshow or to save the slides111 as a new slide presentation 113 in the data store 114.

FIG. 11 depicts a flow diagram of aspects of a method 1100 for insertinga slide 111 into a collaborative text document 115, in accordance withone implementation of the disclosure. Although the user interface 124Ais used for discussion of method 1100, it should be understood that anyother user interface 124B-124Z may be used, instead of or in addition tothe user interface 124A. Method 1100 may be performed in the same or asimilar manner as described above in regards to method 200. In oneimplementation, one or more of the operations described with referenceto method 1100 may be performed by collaborative multi-contentapplication 118A-118Z executed by one or more processing devices of theserver 112A-112Z.

At block 1102, the processing device may provide, to a user device 120Aof a user, a user interface 124A including a first electronic documenthaving content. In some embodiments, the first electronic document maybe a collaborative text document 115 and the content may include text,images, tables, etc.

At block 1104, the processing device may receive a request to view oneor more slides from a second electronic document. In some embodiments,the second electronic document may include a collaborative slidepresentation 113. In one embodiment, the processing device may providethe slides to be displayed in the user interface 124A (e.g., in a filedropdown menu). The slides may include layout templates includingplaceholders without content, slides generated based on content in thefirst electronic document, or any suitable slide. Upon insertion in thefirst electronic document, the user may edit the slide to include thedesired content. In another embodiment, the request to view one or moreslides may include a request to generate one or more slides based oncontent selected from the first electronic document displayed in theuser interface 124A. The processing device may generate the slides 111and provide the slides for display in the user interface 124A in thefirst portion 206 of the user interface 124A while continuing to displaythe first electronic document in the second portion 208 of the userinterface 124A.

At block 1106, the processing device may receive a request to insert aslide 111 of the one or more slides 111 into the first electronicdocument from the user device 120A. The request may include locationinformation of where to insert the slide into the document and/or anidentifier of the selected slide, among other things. The processingdevice may insert the selected slide into the first electronic documentbased on the location information.

At block 1108, the processing device may, responsive to the request,cause the user interface 124A to be modified to include the selectedslide 111 in the first electronic document. The processing device mayalso receive, from the user device 120A, an edit to the slide 111included in the first electronic document. The processing device mayapply the edit to the slide 111 in the first electronic document. Also,the processing device may cause the user interface 124A to be modifiedto include the slide 111 with the edit in the first electronic document.

FIG. 12A depicts the user interface 124A of the collaborativemulti-content application 118A displaying a dropdown menu 1200 includingoptions to insert slides 111 into a collaborative text document 115(first electronic document), in accordance with one implementation ofthe disclosure. As depicted, the dropdown menu 1200 for “Insert”includes an option 1202 to display slides 111 from a slide presentation(second electronic document) that are available for insertion into thefirst electronic document. The slides 111 may include layout templatesfor various types of slides (e.g., title, section header, title andbody, title and two columns, title only, one column text, main point,section title and description, caption, big number, blank). In someembodiments, the slides 111 may include slides generated based oncontent in the collaborative text document 115. In some embodiments, thesidebar presentation tool 204 may display various slides 111 that aregenerated based on content in the collaborative text document 115, andthe user may select (e.g., drag and drop, double click, right click andchoose an option to insert, etc.) one of the slides 111 into thecollaborative text document 115 to insert the selected slide into thecollaborative text document 115. The user may select a desired slide inview of the content at a particular section of the collaborative textdocument 115 and the slide may be inserted directly into thecollaborative text document 115 at that section (e.g., based on thelocation of a cursor). This may enable an enhanced user interface 124Athat displays the slides 111 in collaborative text document 115 toprovide context as to what is included in the slides 111 and may helpthe user visualize how the content in the collaborative text document115 is organized into a slide presentation 113.

For example, FIG. 12B depicts the user interface 124A of thecollaborative multi-content application 118A displaying a collaborativetext document 115 including an inserted slide 1204, in accordance withone implementation of the disclosure. As depicted, the user selected aslide 1204 having a layout template of “Title.” The slide 1204 isinserted directly into the collaborative text document 115 and the slidemay be editable to the user in-line in the collaborative text document115. For example, the user can modify the placeholder for the title inthe slide 1204 to “Marketing: Our Plan”.

In some embodiments, the content of the slide may be automaticallypopulated. For example, the collaborative multi-content application 118Amay receive the request for the slide insertion and, based on the layouttemplate selected, may determine which content to include in the slide.For example, since the user selected the slide with a layout template of“Title,” the multi-content module 118A may parse the content of thecollaborative text document 116 relative to the desired insertionlocation for the slide to find content having formatting of a title. Inthe depicted example, the nearest content having formatting related to atitle is “Marketing Plan.” Accordingly, the collaborative multi-contentapplication 118A may generate a slide having the layout template of“Title” and setting the title to “Marketing Plan”.

In some embodiments, a present graphical element 304 (e.g., button) maybe displayed in any suitable location in the user interface 124A of thecollaborative multi-content application 118A. The present graphicalelement 304 may cause the user interface 124A to be modified to displaya slide presentation of the slides 111 included in the collaborativetext document 115 in a preview pane (e.g., full-screen or a portion ofthe screen). The slide presentation may present the slides 206 that areinserted in the collaborative text document 115 in slideshow fashionwhere a single slide is displayed at a time.

FIG. 13A depicts the user interface 124A of the collaborativemulti-content application 118A displaying the sidebar presentation tool204 from which a user may insert a slide 1300 into a collaborative textdocument 115 (first electronic document), in accordance with oneimplementation of the disclosure. As depicted, the user interface 124Aincludes one or more slides 111 (that may or may not have been generatedbased on the content in the collaborative text document 115) of thecollaborative slide presentation 113 (second electronic document)displayed in the first portion 206 and the collaborative text document115 displayed in the second portion 208. A user may select the slide1300 that they want to insert into the collaborative text document 115,drag the slide 1300 to the desired location in the collaborative textdocument 115, and release/drop the slide 1300 at the desired location tocause the slide 1300 to be inserted in the collaborative text document115 by the collaborative multi-content application 118A. In someembodiments, the user may select the slide 1300 and perform anotheraction (e.g., double clicking, right clicking and selecting an option toinsert the slide, etc.) using an input peripheral to cause the slide1300 to be inserted.

FIG. 13B depicts the user interface 124A of the collaborativemulti-content application 118A displaying, in the second portion 208,the collaborative text document 115 including the slide 1300 insertedfrom the sidebar presentation tool 204 in the first portion 206 of theuser interface 124A, in accordance with one implementation of thedisclosure. After the slide 1300 is inserted, the user may edit theslide in-line in the collaborative text document 115. Further, the usermay select an option to launch the slides included in the collaborativetext document 115 in a presentation mode.

FIG. 14 depicts a block diagram of an example computing system operatingin accordance with one or more aspects of the present disclosure. Invarious illustrative examples, computer system 1400 may correspond toany of the computing devices within system architecture 100 of FIG. 1.In one implementation, the computer system 1400 may be each of theservers 112A-112Z or the training engine 117. In another implementation,the computer system 1400 may be each of the user devices 120A-120Z.

In certain implementations, computer system 1400 may be connected (e.g.,via a network, such as a Local Area Network (LAN), an intranet, anextranet, or the Internet) to other computer systems. Computer system1400 may operate in the capacity of a server or a client computer in aclient-server environment, or as a peer computer in a peer-to-peer ordistributed network environment. Computer system 1400 may be provided bya personal computer (PC), a tablet PC, a set-top box (STB), a PersonalDigital Assistant (PDA), a cellular telephone, a web appliance, aserver, a network router, switch or bridge, or any device capable ofexecuting a set of instructions (sequential or otherwise) that specifyactions to be taken by that device. Further, the term “computer” shallinclude any collection of computers that individually or jointly executea set (or multiple sets) of instructions to perform any one or more ofthe methods described herein.

In a further aspect, the computer system 1400 may include a processingdevice 1402, a volatile memory 1404 (e.g., random access memory (RAM)),a non-volatile memory 1406 (e.g., read-only memory (ROM) orelectrically-erasable programmable ROM (EEPROM)), and a data storagedevice 1416, which may communicate with each other via a bus 1408.

Processing device 1402 may be provided by one or more processors such asa general purpose processor (such as, for example, a complex instructionset computing (CISC) microprocessor, a reduced instruction set computing(RISC) microprocessor, a very long instruction word (VLIW)microprocessor, a microprocessor implementing other types of instructionsets, or a microprocessor implementing a combination of types ofinstruction sets) or a specialized processor (such as, for example, anapplication specific integrated circuit (ASIC), a field programmablegate array (FPGA), a digital signal processor (DSP), or a networkprocessor).

Computer system 1400 may further include a network interface device1422. Computer system 1400 also may include a video display unit 1410(e.g., an LCD), an alphanumeric input device 1412 (e.g., a keyboard), acursor control device 1414 (e.g., a mouse), and a signal generationdevice 1420.

Data storage device 1416 may include a non-transitory computer-readablestorage medium 1424 on which may store instructions 1426 encoding anyone or more of the methods or functions described herein, includinginstructions implementing the collaborative multi-content application118 (118A-118Z) and/or the user interface 1242 (124A-124Z) of FIG. 1 forimplementing any of the methods described herein.

Instructions 1426 may also reside, completely or partially, withinvolatile memory 1404 and/or within processing device 1402 duringexecution thereof by computer system 1400, hence, volatile memory 1404and processing device 1402 may also constitute machine-readable storagemedia.

While computer-readable storage medium 1424 is shown in the illustrativeexamples as a single medium, the term “computer-readable storage medium”shall include a single medium or multiple media (e.g., a centralized ordistributed database, and/or associated caches and servers) that storethe one or more sets of executable instructions. The term“computer-readable storage medium” shall also include any tangiblemedium that is capable of storing or encoding a set of instructions forexecution by a computer that cause the computer to perform any one ormore of the methods described herein. The term “computer-readablestorage medium” shall include, but not be limited to, solid-statememories, optical media, and magnetic media.

In the foregoing description, numerous details are set forth. It will beapparent, however, to one of ordinary skill in the art having thebenefit of this disclosure, that the present disclosure can be practicedwithout these specific details. In some instances, well-known structuresand devices are shown in block diagram form, rather than in detail, inorder to avoid obscuring the present disclosure.

Some portions of the detailed description have been presented in termsof algorithms and symbolic representations of operations on data bitswithin a computer memory. These algorithmic descriptions andrepresentations are the means used by those skilled in the dataprocessing arts to most effectively convey the substance of their workto others skilled in the art. An algorithm is here, and generally,conceived to be a self-consistent sequence of steps leading to a desiredresult. The steps are those requiring physical manipulations of physicalquantities. Usually, though not necessarily, these quantities take theform of electrical or magnetic signals capable of being stored,transferred, combined, compared, and otherwise manipulated. It hasproven convenient at times, for reasons of common usage, to refer tothese signals as bits, values, elements, symbols, characters, terms,numbers, or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the following discussion,it is appreciated that throughout the description, discussions utilizingterms such as “receiving”, “displaying”, “moving”, “adjusting”,“replacing”, “determining”, “playing”, or the like, refer to the actionsand processes of a computer system, or similar electronic computingdevice, that manipulates and transforms data represented as physical(e.g., electronic) quantities within the computer system's registers andmemories into other data similarly represented as physical quantitieswithin the computer system memories or registers or other suchinformation storage, transmission or display devices.

For simplicity of explanation, the methods are depicted and describedherein as a series of acts. However, acts in accordance with thisdisclosure can occur in various orders and/or concurrently, and withother acts not presented and described herein. Furthermore, not allillustrated acts can be required to implement the methods in accordancewith the disclosed subject matter. In addition, those skilled in the artwill understand and appreciate that the methods could alternatively berepresented as a series of interrelated states via a state diagram orevents. Additionally, it should be appreciated that the methodsdisclosed in this specification are capable of being stored on anarticle of manufacture to facilitate transporting and transferring suchmethods to computing devices. The term article of manufacture, as usedherein, is intended to encompass a computer program accessible from anycomputer-readable device or storage media.

Certain implementations of the present disclosure also relate to anapparatus for performing the operations herein. This apparatus can beconstructed for the intended purposes, or it can comprise a generalpurpose computer selectively activated or reconfigured by a computerprogram stored in the computer. Such a computer program can be stored ina computer readable storage medium, such as, but not limited to, anytype of disk including floppy disks, optical disks, CD-ROMs, andmagnetic-optical disks, read-only memories (ROMs), random accessmemories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any typeof media suitable for storing electronic instructions.

Reference throughout this specification to “one implementation” or “animplementation” means that a particular feature, structure, orcharacteristic described in connection with the implementation isincluded in at least one implementation. Thus, the appearances of thephrase “in one implementation” or “in an implementation” in variousplaces throughout this specification are not necessarily all referringto the same implementation. In addition, the term “or” is intended tomean an inclusive “or” rather than an exclusive “or.” Moreover, thewords “example” or “exemplary” are used herein to mean serving as anexample, instance, or illustration. Any aspect or design describedherein as “exemplary” is not necessarily to be construed as preferred oradvantageous over other aspects or designs. Rather, use of the words“example” or “exemplary” is intended to present concepts in a concretefashion.

It is to be understood that the above description is intended to beillustrative, and not restrictive. Many other implementations will beapparent to those of skill in the art upon reading and understanding theabove description. The scope of the disclosure should, therefore, bedetermined with reference to the appended claims, along with the fullscope of equivalents to which such claims are entitled.

Further to the descriptions above, a user may be provided with controlsallowing the user to make an election as to both if and when systems,programs or features described herein may enable collection of userinformation (e.g., information about a user's social network, socialactions or activities, profession, a user's preferences, or a user'scurrent location), and if the user is sent content or communicationsfrom a server. In addition, certain data may be treated in one or moreways before it is stored or used, so that personally identifiableinformation is removed. For example, a user's identity may be treated sothat no personally identifiable information can be determined for theuser, or a user's geographic location may be generalized where locationinformation is obtained (such as to a city, ZIP code, or state level),so that a particular location of a user cannot be determined. Thus, theuser may have control over what information is collected about the user,how that information is used, and what information is provided to theuser.

What is claimed is:
 1. A method comprising: displaying, in a userinterface on a user device, an electronic document including content;receiving a user selection of a portion of the content included in theelectronic document being displayed in the user interface; andresponsive to the user selection of the portion of the content,modifying the user interface to include, in a first portion of the userinterface, one or more slides generated based on the selected portion ofthe content while continuing to display the electronic documentincluding the content in a second portion of the user interface.
 2. Themethod of claim 1, further comprising: receiving an edit, in the firstportion of the user interface, to a slide of the one or more slides; andresponsive to receiving the edit, modifying the user interface toinclude, in the first portion of the user interface, the slide with theedit while continuing to display the electronic document including thecontent in the second portion of the user interface.
 3. The method ofclaim 1, further comprising, displaying, in the first portion of theuser interface, an option for each of the one or more slides, whereinthe option disables or enables summarization of content included in arespective slide; receiving a user selection of the option for a slideof the one or more slides to enable summarization of content for theslide; and responsive to the user selection of the option, reducing thecontent in the slide from a first number of sentences to a second lessernumber of sentences.
 4. The method of claim 1, further comprising:receiving a user selection of a slide of the one or more slides beingdisplayed in the first portion of the user interface; and responsive tothe user selection of the slide, modifying the user interface tohighlight the portion of content in the electronic document that wasused to generate the selected slide.
 5. The method of claim 1, furthercomprising: receiving a user selection of a slide to delete from the oneor more slides being displayed in the first portion of the userinterface; and responsive to the user selection of the slide to delete,modifying the user interface to display, in the first portion, the oneor more slides without the selected slide while continuing to displaythe electronic document including the content in the second portion ofthe user interface.
 6. The method of claim 1, further comprising:receiving a user selection of an option in the user interface to presentthe one or more slides being displayed in the first portion in apresentation mode; and presenting the one or more slides full-screen inthe presentation mode.
 7. The method of claim 1, further comprisingreceiving a user selection of an option in the user interface to enter aselecting mode, wherein any selections of content made while operatingin the selecting mode cause the one or more slides to be generated forthe selected content.
 8. The method of claim 1, further comprising:receiving a user selection to add the one or more slides to an existingslide presentation; and responsive to the user selection to add the oneor more slides to the existing slide presentation, causing the one orslides to be added to the existing slide presentation.
 9. The method ofclaim 1, further comprising: receiving a user selection to save the oneor more slides as a new slide presentation; and responsive to the userselection to save the one or more slides as the new slide presentation,causing the one or more slides to be saved as the new slidepresentation.
 10. A method comprising: providing, to a user device of auser, a user interface including an electronic document having content;receiving a request to generate one or more slides based on a userselected portion of the content of the electronic document beingdisplayed in the user interface; and responsive to the request, causingthe user interface to be modified to include, in a first portion of theuser interface, the one or more generated slides while continuing todisplay the electronic document having the content in a second portionof the user interface.
 11. The method of claim 10, further comprising:receiving, from the user device, an edit to a slide of the one or moreslides being displayed in the first portion of the user interface; andresponsive to receiving the edit, causing the user interface to bemodified to include, in the first portion of the user interface, theslide with the edit while continuing to display the electronic documentincluding the content in the second portion of the user interface. 12.The method of claim 10, further comprising: receiving a second requestto enable summarization of content for a slide of the one or moreslides; responsive to the second request, reducing the content in theslide from a first number of sentences to a second lesser number ofsentences; and causing the user interface to be modified to include theslide with the reduced content in the first portion while continuing todisplay the electronic document including the content in the secondportion of the user interface.
 13. The method of claim 10, furthercomprising: receiving a second request to add the one or more slides toan existing slide presentation; and responsive to the second request,adding the one or more slides to the existing slide presentation in adata store.
 14. The method of claim 10, further comprising: receiving asecond request to save the one or more slides as a new slidepresentation; and responsive to the second request, saving the one ormore slides as the new slide presentation in a data store.
 15. Themethod of claim 10, wherein the electronic document is a collaborativetext document that is concurrently editable by more than one user.
 16. Amethod comprising: displaying, in a user interface at a user device, afirst electronic document; receiving, via the user interface, a userrequest to view one or more slides from a second electronic document;receiving, via the use interface, a user selection of a slide of the oneor more slides to insert into the first electronic document; andresponsive to the user selection of the slide, modifying the userinterface to include the selected slide in the first electronicdocument.
 17. The method of claim 16, further comprising: receiving anedit to the slide in-line in the first electronic document; andmodifying the user interface to include the slide with the edit in thefirst electronic document.
 18. The method of claim 16, wherein the userselection of the slide comprises dragging the slide being displayed in afirst portion of the user interface and dropping the slide at a locationin the first electronic document being displayed in a second portion ofthe user interface.
 19. The method of claim 16, wherein the userselection of the slide comprises selecting the slide from a dropdownmenu in the user interface.
 20. The method of claim 16, wherein thefirst electronic document comprises a text document and the secondelectronic document comprises a slide presentation.
 21. A methodcomprising: providing, to a user device of a user, a user interfaceincluding a first electronic document having content; receiving, at aserver, a request to view one or more slides from a second electronicdocument; receiving, at the server, a second request to insert a slideof the one or more slides into the first electronic document from theuser device; responsive to the second request, inserting the slide intothe first electronic document and causing the user interface to bemodified to include the selected slide in the first electronic document.22. The method of claim 21, wherein the first electronic documentcomprises a text document and the second electronic document comprises aslide presentation.
 23. The method of claim 21, further comprising:receiving, from the user device, an edit to the slide; applying the editto the slide in the first electronic document; and causing the userinterface to be modified to include the slide with the edit in the firstelectronic document.